Formal Verification Of Pastry Using TLA
نویسندگان
چکیده
Pastry [1, 2] is an algorithm that provides a scalable distributed hash table over an underlying P2P network. Several implementations of Pastry are available, but to the best of our knowledge the correctness of the algorithm has not been verified formally. Since Pastry combines rather complex data structures, asynchronous communication, concurrency, resilience to churn and fault tolerance, we believe that it makes an interesting target for verification using TLA. More precisely, our goal is to model the join and lookup protocols of Pastry using the TLA language, and to use the associated tools to verify significant correctness properties.
منابع مشابه
Towards Verification of the Pastry Protocol Using TLA +
Pastry is an algorithm that provides a scalable distributed hash table over an underlying P2P network. Several implementations of Pastry are available and have been applied in practice, but no attempt has so far been made to formally describe the algorithm or to verify its properties. Since Pastry combines rather complex data structures, asynchronous communication, concurrency, resilience to ch...
متن کاملA machine-checked proof of correctness of Pastry. (Une preuve certifiée par la machine de la correction du protocole Pastry)
A distributed hash table (DHT) is a peer-to-peer network that o↵ers the function of a classic hash table, but where di↵erent key-value pairs are stored at di↵erent nodes on the network. Like a classic hash table, the main function provided by a DHT is key lookup, which retrieves the value stored at a given key. Examples of DHT protocols include Chord, Pastry, Kademlia and Tapestry. Such DHT pro...
متن کاملModel Checking the Pastry Routing Protocol
Pastry is an algorithm for implementing a scalable distributed hash table over an underlying P2P network, an active area of research in distributed systems. Several implementations of Pastry are available and have been applied in practice, but no attempt has so far been made to formally describe the algorithm or to verify its properties. Since Pastry combines rather complex data structures, asy...
متن کاملA Rigorous Correctness Proof for Pastry
Peer-to-peer protocols for maintaining distributed hash tables, such as Pastry or Chord, have become popular for a class of Internet applications. While such protocols promise certain properties concerning correctness and performance, verification attempts using formal methods invariably discover border cases that violate some of those guarantees. Tianxiang Lu reported correctness problems in p...
متن کاملA TLA+ Formal Specification and Verification of a New Real-Time Communication Protocol
We describe the formal specification and verification of a new faulttolerant real-time communication protocol, called DoRiS, which is designed for supporting distributed real-time systems that use a shared high-bandwidth medium. Since such a kind of protocol is reasonably complex and requires high levels of confidence on both timing and safety properties, formal methods are useful. Indeed, the ...
متن کامل